/**
 * Copyright(c) 2014 Xunton Solutions
 *
 * History:
 *   15-3-24 下午5:07 Created by dwzhang
 */
package com.jade.bss.crm;

import com.jade.bss.base.BssException;
import com.jade.framework.base.criterion.Criteria;
import com.jade.framework.base.util.PagingList;

/**
 * 用户反馈数据访问接口。
 *
 * @author <a href="mailto:dwzhang@xunton.com">dwzhang</a> 
 * @version 1.0 15-3-24 下午5:07
 */
public interface FeedbackDao
{
    /**
     * 创建用户反馈。
     *
     * @param feedback 用户反馈信息。
     * @throws BssException 处理异常。
     */
    public void addFeedback(Feedback feedback)
            throws BssException;

    /**
     * 更新用户反馈.
     *
     * @param feedback 用户反馈信息。
     * @throws BssException 处理异常
     */
    public void updateFeedback(Feedback feedback)
            throws BssException;

    /**
     * 删除用户反馈。
     *
     * @param feedback 用户反馈信息。
     * @throws BssException 处理异常。
     */
    public void removeFeedback(Feedback feedback)
            throws BssException;

    /**
     *  获取用户反馈详细信息。
     *
     * @param id 用户反馈标识
     * @return 用户反馈信息对象
     */
    public Feedback getFeedback(long id);

    /**
     * 根据条件分页列出用户反馈。
     *
     * @param criteria 查询条件
     * @return 用户反馈列表。
     */
    public PagingList<Feedback> queryFeedback(Criteria criteria);
}
